1. Field of the Disclosure
The present disclosure relates in general to non-volatile memories, and more specifically to a system and method for adaptively erasing non-volatile memory.
2. Description of the Related Art
During a typical erase operation of a non-volatile memory (NVM) block, such as erasable programmable read only memories (EPROMs), electrically erasable programmable read only memories (EEPROMs), block erasable EEPROMs (e.g., “Flash” memories), etc., a pre-program procedure is first performed to raise the threshold voltages of the memory cells of the memory block to a level at or above a program verify voltage. For the erase operation, the pre-program procedure is followed by a Fowler-Nordheim (FN) erase procedure to lower the threshold voltages of the memory cells of the memory block to a level at or below an erase verify voltage. During the conventional FN erase procedure, however, the resulting distribution may include memory cells which have been over erased, which results in increased column leakage. Furthermore, the problem of column leakage increases as the memory cells are further scaled, causing, for example, a subsequent program procedure to fail due to lowered drain bias, or a read procedure to fail since the over-erased memory cells may prevent sense amplifiers from distinguishing between an erased cell and a programmed cell. A soft program procedure may be used after the FN erase procedure to compress the distribution of the erased cells so as to reduce the column leakage.
A memory device is typically addressed by blocks of one or more different sizes. The FN erase procedure may be performed serially on one block at a time, or in parallel on several blocks simultaneously. For small blocks (e.g., blocks with 64 Kbytes or less), the erase operation time is dominated by the FN erase procedure. For large blocks (e.g., blocks with 128 Kbytes or more), the erase operation time is dominated by the soft program procedure. To speed up the erase operation for multiple blocks, if the blocks are always erased in parallel during the FN erase step, there is a risk that the number of over-erased bits will increase resulting in an increase in the amount of time required to soft program, potentially increasing the overall time required for the total erase operation time. However, if selected blocks are always serially erased in the FN erase step, an unnecessarily longer erase time will be required, especially when erasing small blocks.